Skip to content

Compiler for Swift-like to Assembly-like languages, built in C for the IFJ course at Brno University of Technology, 2023. Features Scanner, Parser, Precedence Analyzer, and Code Generator.

Notifications You must be signed in to change notification settings

tomashobza/swift-asm-compiler

Repository files navigation

Projekt do předmětu IFJ 2023/Project for IFJ 2023

✍️ Autoři/Authors:

🎨 Abstrakt/Abstract:

Tento projekt vznikl v rámci předmětu IFJ (Formální jazyky a překladače) na VUT v Brně, 2023. Jedná se o překladač napsaný v jazyce C, který překládá kód z jazyka podobnému jazyku Swift do jazyka podobnému Assembly. Překladač je rozdělen na několik částí: Skener, Parser, Precedenční Syntaktický Analyzátor a Generátor kódu. Každý zdrojový soubor obsahuje hlavičku s jménem jeho autora. / This project was created within the IFJ (Formal Languages and Compilers) course at Brno University of Technology, 2023. It is a compiler written in C that translates code from a Swift-like language to an Assembly-like language. The compiler is divided into several parts: the Scanner, the Parser, the Precedence Syntactic Analyzer and the Code Generator. Each source file contains a header with the name of its author.

🏗️ Struktura projektu/Project structure:

  • .example.vscode - json soubory pro vscode na překlad a debugování / vs code json files for build and debug
  • doc - veškerá dokumentace / all documentation
  • include - hlavičkové soubory / header files
  • log - výstupní logy programu / output logs
  • src - zdrojové soubory / source files
  • tests - soubory (zdrojové, testovací vstupy, testovací skripty) určené k testování programu / testing input files and scripts
  • utils - utility např. k vytváření precedenční tabulky / utility files

🐶 Pes/Dog:

Pes!

About

Compiler for Swift-like to Assembly-like languages, built in C for the IFJ course at Brno University of Technology, 2023. Features Scanner, Parser, Precedence Analyzer, and Code Generator.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published